// pages/login/login.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    username: '',
    password: ''
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  },

  onUsernameInput(e) {
    this.setData({
      username: e.detail.value
    })
  },

  onPasswordInput(e) {
    this.setData({
      password: e.detail.value
    })
  },

  // 处理微信登录
  handleLogin() {
    wx.showLoading({
      title: '登录中...',
    })

    // 1. 调用微信登录接口获取code
    wx.login({
      success: (res) => {
        if (res.code) {
          // 2. 将code发送到后端服务器
          wx.request({
            url: 'http://localhost:8080/users/wx-login',
            method: 'POST',
            header: {
              'content-type': 'application/json'
            },
            data: {
              code: res.code
            },
            success: (response) => {
              console.log('登录响应：', response)
              const resData = response.data.data;
              const isSuccess = response.data.success === true || response.data.success === 'true';
              console.log('isSuccess:', isSuccess, typeof response.data.success);
              if (isSuccess) {
                // 登录成功
                wx.setStorageSync('token', resData.token)
                wx.setStorageSync('userInfo', resData)
                wx.setStorageSync('userId', resData.id)
                wx.showToast({
                  title: '登录成功',
                  icon: 'success',
                  duration: 1000,
                  success: () => {
                    setTimeout(() => {
                      wx.switchTab({
                        url: '/pages/index/index'
                      })
                    }, 1000)
                  }
                })
              } else {
                wx.showToast({
                  title: (response.data.message) || '登录失败',
                  icon: 'none'
                })
              }
            },
            complete: () => {
              wx.hideLoading()
            }
          })
        } else {
          wx.showToast({
            title: '微信登录失败',
            icon: 'none'
          })
          wx.hideLoading()
        }
      },
      fail: (error) => {
        console.error('微信登录失败：', error)
        wx.showToast({
          title: '微信登录失败',
          icon: 'none'
        })
        wx.hideLoading()
      }
    })
  },

  goToRegister() {
    wx.navigateTo({
      url: '/pages/register/register'
    })
  }
})